package com.lht.testDemo;

/**
 * @author Eric
 * @version 1.0
 * @date 2019-08-09
 */
public class Outer {

    private static String stat = "静态属性";

    private String obj = "实例属性";

    /**
     * 问题1 ： 为什么实例内部类，不能在类外部访问
     * 问题2：  为什么实例内部类，有外部类的this引用
     */
    public class ObjIn{

        public void test(){
            System.out.println(Outer.this.obj);
            System.out.println(Outer.stat);
        }
    }

    /**
     *问题1： 为什么静态内部类不能持久外部类的实例（this）引用
     */
    public static class StaticIn{
        public void test(){
            System.out.println(Outer.stat);
        }
    }

    public static void main(String[] args){
        Outer.StaticIn s =  new Outer.StaticIn();
        //会报错
//        Outer.ObjIn s = new Outer.ObjIn();
    }
}
